Modern companies often distribute information and applications to many users over the internet using standard technologies such as Hypertext Markup Language (HTML). The users, in turn, use web browsers (“browser”) at a user terminal to receive and render the HTML to view the information or interact with the application. Companies often distribute scripts with HTML to add flexibility and customizability to the generally static HTML. These scripts are typically run within a browser using a script engine and, in combination with HTML, cause a browser to display content to be displayed on a user terminal (e.g., a computer monitor or smartphone screen) and, in some cases, to also manipulate and transmit data back to the content provider. Combining scripts with HTML may allow delivery of a richer user experience beyond what is typically possible with HTML alone.
Users typically have the option of selecting one of many available web browsers. Script engines within the browsers may also be varied because browser manufacturers may develop their own engine, or employ one of several pre-developed script engines. Often, because companies may not impose a particular browser or script engine on users, companies attempt to distribute HTML and scripts to provide an acceptable user experience regardless of the particular browser or script engine employed by the client user; i.e., the HTML and scripts are designed to work with a number of different browser and script engine configurations. Typically, script error detection is performed via in-house testing of the scripts prior to distributing the scripts to users or by error reports or surveys completed by the users themselves.